-- function 测试

function test(n)
    if n == 0 then
        return 1
    else
        return 2
    end
end

print(test(1))
print(test(0))

-- 匿名函数
function plus(a, b)
    return a + b
end

-- 传入匿名函数
function print_plus(a, b, fun)
    print(fun(a, b))
end

print_plus(1, 2, plus)

-- while循环
while (true) do
    print(666)
    break
end

-- for循环 1-10 每次递增1，1可以省略
for i = 1, 10, 1 do
    -- body
end

function func(x)
    return x * 2
end

for i = 1, func(5) do
    print(i)
end

-- 
a = 10
repeat
    print("a:", a)
    a = a + 1
until (a > 12)

-- 可变参数
function add(...) 
    local sum = 0
    local args = {...}
    for index, value in ipairs(args) do
        sum = sum + value
    end
    return sum
end

print(add(1, 2, 3))